/**
 * 四海兄弟工作小组，群号:160517807
 * @author 乔继承
 * @date 2014年1月18日 下午1:24:11 
 * @version V1.0   
*/
package org.mcpro.common.util;

import java.util.List;
import java.util.Map;

/** 
 * 通用对象的一些相关辅助方法
 * @author 乔继承
 * @date 2014年1月18日 下午1:24:11 
 *  
 */
public class ObjectUtil {
	/**
	 * 判断当前对象是否为非空
	 * @param obj
	 * @return
	 * @author 乔继承
	 * @date 2014年3月3日 下午10:15:30
	 */
	public static boolean isNotEmpty(Object obj){
		return !isEmpty(obj);
	}
	/**
	 * 判断当前对象是否为空，目前只实现了字符串判断和list集合判断,字符串数字,和map集合
	 * @param obj
	 * @return
	 * @author 乔继承
	 * @date 2014年1月18日 下午1:29:46
	 */
	public static boolean isEmpty(Object obj){
		boolean isEmpty=true;
		if(obj==null){
			return isEmpty;
		}
		if(obj instanceof String){
			String strObj=((String) obj).trim();
			if("".equals(strObj)||"null".equals(strObj)||"undefined".equals(strObj)){
				return isEmpty;
			}
		}
		if(obj instanceof String[]){
			if(((String[]) obj).length==0){
				return isEmpty;
			}
		}
		if(obj instanceof List<?>){
			List<?> list=(List<?>)obj;
			if(list.size()==0){
				return isEmpty;
			}
		}
		if(obj instanceof Map<?, ?>){
			Map<?,?> map=(Map<?,?>)obj;
			if(map.size()==0){
				return isEmpty;
			}
		}
		return !isEmpty;
	}
}
